429. N-ary Tree Level Order Traversal - LeetCode Solution


Tree Breadth-first-Search

Python Code:

"""
# Definition for a Node.
class Node:
    def __init__(self, val=None, children=None):
        self.val = val
        self.children = children
"""

class Solution:
    def levelOrder(self, root: 'Node') -> List[List[int]]:
        if not root:
            return []
        
        ans = []
        q = []
        
        q.append(root)
        q.append(None)
        count = 0
        

        
        s = []
        
        while count < 2:
            k = q.pop(0)
            
            if not k:

                count+=1

                ans.append(s)
                s = []
                q.append(None)
                
            else:
                
                s.append(k.val)
                count = 0

                for i in range(len(k.children)):
                    q.append(k.children[i])
                
        
        return ans[:len(ans) -1]

            
            
            
                    


Comments

Submit
0 Comments
More Questions

1213A - Chips Moving
490A - Team Olympiad
233A - Perfect Permutation
1360A - Minimal Square
467A - George and Accommodation
893C - Rumor
227B - Effective Approach
1534B - Histogram Ugliness
1611B - Team Composition Programmers and Mathematicians
110A - Nearly Lucky Number
1220B - Multiplication Table
1644A - Doors and Keys
1644B - Anti-Fibonacci Permutation
1610A - Anti Light's Cell Guessing
349B - Color the Fence
144A - Arrival of the General
1106A - Lunar New Year and Cross Counting
58A - Chat room
230A - Dragons
200B - Drinks
13A - Numbers
129A - Cookies
1367B - Even Array
136A - Presents
1450A - Avoid Trygub
327A - Flipping Game
411A - Password Check
1520C - Not Adjacent Matrix
1538B - Friends and Candies
580A - Kefa and First Steps